﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace QuickStart
{
	/// <summary>
	/// Service exposed by the shell that allows moduels to publish tasks 
	/// they provide.
	/// </summary>
	public interface ITaskService : IEnumerable<string>
	{
		/// <summary>
		/// Here we could provide an icon too, etc.
		/// </summary>
		void Register<TView>(string taskName)
			where TView : IView;

		/// <summary>
		/// Executes the task with the given name.
		/// </summary>
		void Execute(string taskName);
	}
}
